package com.ygqh.baby.mapper;

import com.ygqh.baby.ao.DataStatus;
import com.ygqh.baby.ao.QueryInfo;
import com.ygqh.baby.po.YgSearchWords;
import com.ygqh.baby.po.YgSearchWordsExample;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

/**
 * @author Ss
 */
public interface YgSearchWordsMapper {

	int countByExample(YgSearchWordsExample example);

	int deleteByExample(YgSearchWordsExample example);

	int deleteByPrimaryKey(Long id);

	int insert(YgSearchWords record);

	int insertSelective(YgSearchWords record);

	List<YgSearchWords> selectByExample(YgSearchWordsExample example);

	YgSearchWords selectByPrimaryKey(Long id);

	int updateByExampleSelective(@Param("record") YgSearchWords record, @Param("example") YgSearchWordsExample example);

	int updateByExample(@Param("record") YgSearchWords record, @Param("example") YgSearchWordsExample example);

	int updateByPrimaryKeySelective(YgSearchWords record);

	int updateByPrimaryKey(YgSearchWords record);

	int countSuper(@Param("words") String words, @Param("minHot") Long minHot, @Param("status") DataStatus status);

	List<YgSearchWords> selectSuper(@Param("queryInfo") QueryInfo queryInfo, @Param("words") String words, @Param("minHot") Long minHot, @Param("status") DataStatus status);

	YgSearchWords selectWords(@Param("words") String words, @Param("status") DataStatus status);

	int updateHot(YgSearchWords record);

	List<String> selectValidWords(@Param("words") String words, @Param("limit") Integer limit);

	List<YgSearchWords> selectByStatus(@Param("minUpdateTime") Date minUpdateTime, @Param("status") DataStatus[] status);

	int updateStatus(@Param("recordList") List<YgSearchWords> recordList);
}



